from typing import Callable
from python_part.main_policy_database_member.ReadWriteClass import ReadWriteClass


class LineSolverBase:
    def __init__(self,
        get_all_policy: Callable[[], tuple[dict, dict, dict]],
        update_entity_path_to_rwclass_id: Callable[[str, int], None],
        update_rwclass_id_to_rwclass: Callable[[int, ReadWriteClass], None],
        delete_entity_path_to_rwclass_id: Callable[[str], None],
        delete_rwclass_id_to_rwclass: Callable[[int], None]):

        self.update_entity_path_to_rwclass_id = update_entity_path_to_rwclass_id
        self.update_rwclass_id_to_rwclass = update_rwclass_id_to_rwclass
        self.delete_entity_path_to_rwclass_id = delete_entity_path_to_rwclass_id
        self.delete_rwclass_id_to_rwclass = delete_rwclass_id_to_rwclass
        self.get_all_policy = get_all_policy


    def check_is_this(self, line_content:str) -> bool:
        pass

    def solve_one(self, line_content:str) -> bool:
        pass
